The present invention relates to a storage sharing-type distribution multimedia server system which is capable of servicing with minimum copying by storage sharing when multiple accesses are made to the same contents.
A video server system may be used as a typical multimedia server system. One of the functions of the video server system is to provide a client with digitized video data stored in a storage, in response to a request from the client. In general, the video data are compressed, for example, using the MPEG (Moving Picture Experts Group) method, and are provided to the client at a given transfer rate corresponding to a reproducing time. To guarantee the transfer rate, the video server system often employs as the server's output, an ATM (Asynchronous Transfer Mode) network which can arbitrarily change the band-width (the speed of transferring information) during transferring. The ATM features transferring a mixture of voice data, moving picture data, and computer data. It divides any data into fixed-length data units of 48 bytes, and further adds a header of 5 bytes to the fixed-length data to prepare a cell of 53 bytes, thus switching in units of cells.
In order to realize such a video server system in the distribution-type model, a plurality of element servers, which manage the services of transferring necessary information in response to a request from a client share the contents of the information including the video data.
The loosely-coupled distribution-type server system in which the servers each have the disk array, occasionally does not share the contents at all. In this case, there is a drawback that the allotment of the processes and the distribution of the loads among the element servers, and the making of a backup copy are impossible because of the difference of the functions among the element servers. To solve the problem, each of the element servers holds a copy of the contents of the other element servers. However, allowing n element servers, for example, to hold all of the contents, requires storage n times larger than sharing the contents, which results in a cost disadvantage.
As stated above, it is significant to share the contents among the plurality of element servers in the distribution-type server system. However, in general, it is difficult to share the contents in a typical network distribution-type server system. The reason is as follows. Sharing the contents data via the network is theoretically possible. However, when sharing a large amount of data such as video data, the load over the network increases immensely. Particularly, since the video data requires continuity and stability thereof, it is essential to guarantee the transfer rate of data as described above.
Recently, a distribution system based upon a ATM network has been used to meet such a request.
As stated above, in the loosely-coupled distribution-type server system, sharing the contents is difficult, and the allotment of the processes, the distribution of the loads among the element servers, and the making of the backup copy cannot be readily realized. To attain this object, each of the element servers needs to hold the same contents. In other word, all of the contents need to be made with the same number of copies as the element servers. Such a system has the drawback that the storage capacity for storing the contents increases in proportion to the number of the element servers.
To solve this problem, there is a method of multiplexing only the contents that are frequently accessed, but not copying the contents that are rarely accessed. In this case, the algorithm of allotting the processes among the element servers is complicated with its reduced flexibility. Furthermore, even if applying the method, when a failure occurs in an element server which holds the contents that no copy thereof has been stored in the other element servers, the other element servers cannot make a copy of the contents.
In the distribution-type server system which employs the ATM network, when an element server is requested to deliver video data, for example, if the requested contents have been stored in a storage device physically connected to one of the other element servers, the element server must output the contents data after receiving them via the network. This function results in disadvantages in performance and cost by the transfer process between the element servers, and also the network might decrease in stability, which depends upon the load thereover.